package com.opcode.nebulamobil.base.activities;

import com.opcode.nebulamobil.base.fragments.dialogfragments.DialogFragmentBase;

/**
 * Bu aktivite, alt sınıflarındaki çeşitli işlemlerden dolayı dialog gösterilmesine ihtiyaç duyulan aktivitelerin üst sınıfını oluşturur.
 * @author Okan ERDOĞAN
 *
 * 8 Eyl 2014
 */
public abstract class DialogShowerActivityBase extends FragmentActivityBase{
	
	
	/**
	 * Dışarıdan parametre olarak DialogFragmentBase'in alt sınıfı olan bir dialogFragment alır.
	 * Ayrıca bu dialog fragmentin tag bilgisini de alır.
	 * Son olarak bu dialog fragment hali hazırda gösteriliyorsa kapatır. Gösterilmiyorsa açar.
	 * @param dialogFragment
	 * @param dialogTag
	 */
	public void createDialogFragment(DialogFragmentBase dialogFragment,String dialogTag){
		dialogFragment.setCancelable(false);
		if(!dialogFragment.isAdded()){
			if(dialogFragment!=null &&  dialogFragment.getDialog()!=null&& dialogFragment.getDialog().isShowing()) {
				dialogFragment.dismiss();
			}else{
				dialogFragment.show(fragmentManager, dialogTag);
			}
		}	
	}
}
